System and method for operating intravendor and intervendor messaging systems

ABSTRACT

A system and method for enabling the operation of intervendor and intravendor messaging service systems within an operator network includes correctly routing data messages and handshaking messages between the various system components. In one aspect, the present invention uses the uniform resource identifier of a particular messaging system to route one or more handshaking messages from a target terminal to the particular messaging system. In another aspect, the present invention uses a message transaction identification embedded in the handshaking message to direct the handshaking message to the correct messaging service system. In one embodiment, the transaction identification is analyzed by a load balancing switch to determine the location of the particular messaging service system. In another embodiment, one or more of the several messaging service systems in the operator network are used to analyze the transaction identification to determine the location of the particular messaging service system.

FIELD OF THE INVENTION

[0001] The present invention relates generally to network communicationssystems, and more particularly, to a system and method for enabling theoperation of intravendor and intervendor messaging systems in oneoperator network.

BACKGROUND OF THE INVENTION

[0002] The modern communications era has brought about a tremendousexpansion of wireline and wireless networks. Computer networks,television networks, and telephony networks are experiencing anunprecedented technological expansion, fueled by consumer demand.Wireless and mobile networking technologies have addressed relatedconsumer demands, while providing more flexibility and immediacy ofinformation transfer.

[0003] Current and future networking technologies continue to facilitateease of information transfer and convenience to users. The proliferationof local, regional, and global networks, such as the Internet, has madeavailable to users a vast sea of information. These networkingtechnologies have expanded to increasingly include wireless and mobiletechnologies. Through these networks, messaging information can betransferred between desktop systems, wireless systems, mobile systems,etc. For example, multimedia messaging information available via theInternet can now be transferred between mobile wireless units, such ascellular telephones, personal digital assistants (PDAs), laptopcomputers, etc. Multimedia messaging information may also be transferredbetween mobile units and email servers.

[0004] One such technology facilitating the transfer of Internet contentto and from wireless devices is the Wireless Application Protocol (WAP),which integrates the Internet and other networks with wireless networkplatforms. Generally, WAP is a set of protocols that accounts forcharacteristics and functionality of both Internet standards andstandards for wireless services. It is independent of wireless networkstandards, and is designed as an open standard. WAP bridges the gapbetween the wireline Internet paradigm and the wireless domain, whichallows wireless device users to enjoy the benefits of the Internetacross both platforms.

[0005] Second generation wireless service, often referred to as 2Gwireless service, is a current wireless service based oncircuit-switched technology. 2G systems, such as Global System forMobile communications (GSM) and Personal Communications Services (PCS),use digital radio technology for improved quality and a broader range ofservices over first generation mobile technologies. 3G, or thirdgeneration, refers to a set of digital technologies that promisesimprovements in capacity, speed, and efficiency by deploying newpacket-based transmission methodologies between terminals and thenetwork. Users of 3G devices and networks will have access to multimediaservices such as video-on-demand, video conferencing, fast WEB accessand file transfer.

[0006] The demand for multimedia messaging between mobile terminals andbetween mobile wireless devices and internet-connected devices isincreasing. It is often desirable or necessary to operate two or moremessaging systems within one operator network. The two or moresmessaging systems may include messaging systems of one vendor, or themessaging systems of several vendors. The present mobile communicationstandards, such as those disseminated by the WAP forum and 3^(rd)generation partnership project (3GPP), lack the option of supportingseveral messaging systems in one operator network.

[0007] There is a need in the communications industry for a system andmethod providing a standardized approach to facilitate the operation ofmultiple messaging systems in an operator network. There exists afurther need for such a system and method that is capable of supportinglegacy mobile terminals that do not comply with newer standardizedsolutions. The present invention provides a solution to these and othershortcomings of the prior art, and offers additional advantages over theprior art.

SUMMARY OF THE INVENTION

[0008] The present invention is directed to a system and method forenabling multiple messaging systems in an operator network. A methodaccording to the present invention involves initiating a messagetransaction by sending a message from an originator terminal to a targetterminal. The message is stored on a particular messaging system in anoperator network having several messaging systems. One or morehandshaking messages are directed from the target terminal to theparticular messaging system, each handshaking message indicating astatus of the message transaction.

[0009] Another embodiment of the invention a system includes a first anda second mobile terminal. The first mobile terminal initiates a messagetransaction by sending a message to the second mobile terminal. Aparticular messaging service system is coupled to the first and thesecond mobile terminals and occupies an operator network includingseveral messaging service systems. The particular messaging servicesystem stores the message sent by the first mobile terminal and receiveshandshaking messages directed to the particular messaging service systemfrom the second mobile terminal regarding the status of the messagetransaction.

[0010] In yet another embodiment of the invention, a system includesmeans for initiating a message transaction by sending a message from anoriginator terminal to a target terminal, means for storing the messageon a particular messaging system in the operator network having severalmessaging systems, and means for directing one or more handshakingmessages from the target terminal to the particular messaging system,each handshaking message indicating a status of the message transaction.

[0011] A further embodiment of the invention includes acomputer-readable medium having computer-executable instructions forsending messaging information between an originator terminal and atarget terminal in an operator network having several messaging systems.The computer-executable instructions performs a method the includesinitiating a message transaction by sending a message from an originatorterminal to a target terminal, storing the message on a particularmessaging service system in the operator network having severalmessaging systems and directing one or more handshaking messages fromthe target terminal to the particular messaging service system, eachhandshaking message indicating a status of the message transaction.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 is a diagram of various architectural elements in amessaging system;

[0013]FIG. 2 is a diagram showing a wireless application protocol (WAP)implementation of a messaging service system interface;

[0014]FIGS. 3A and 3B are block diagrams illustrating various messagingservice system components providing messaging service for two mobileterminals coupled through a wireless network;

[0015]FIG. 4 is a flow diagram illustrating a signal flow between atarget terminal and a messaging service system during a messagetransaction;

[0016]FIG. 5 is a block diagram illustrating a plurality of messagingservice systems occupying one operator network and coupled through aload balancing switch;

[0017]FIGS. 6A and 6B illustrate a conflict in routing handshakingmessages in an operator network including a plurality of messagingservice systems;

[0018]FIG. 7 is a flowchart conceptually illustrating a method ofenabling operation of several messaging service systems in one operatornetwork in accordance with an embodiment of the invention;

[0019]FIGS. 8A and 8B illustrate a method of directing handshakingsignals using a uniform resource identifier of a messaging servicesystem in accordance with an embodiment of the invention;

[0020]FIGS. 9A and 9B illustrate a method of directing handshakingmessages using a load balancing switch to determine the routing ofhandshaking messages by analyzing a transaction identification inaccordance with an embodiment of the invention;

[0021]FIGS. 10A and 10B illustrate a method of directing handshakingmessages using a randomly selected messaging service system to analyzethe message transaction identification in accordance with an embodimentof the invention;

[0022]FIGS. 11A and 11B illustrate a method of directing handshakingmessages when a message is forwarded without retrieval in accordancewith an embodiment of the invention;

[0023]FIGS. 12A and 12B illustrate a method of directing handshakingmessages by broadcasting the handshaking messages to all messagingservice systems in an operator network in accordance with an embodimentof the invention; and

[0024]FIGS. 13A and 13B illustrate a method of directing handshakingmessages by sequentially routing the handshaking messages to eachmessaging service system in the operator network in accordance with anembodiment of the invention.

DETAILED DESCRIPTION OF VARIOUS EMBODIMENTS

[0025] In the following description of the various embodiments,reference is made to the accompanying drawings which form a part hereof,and in which is shown by way of illustration various embodiments inwhich the invention may be practiced. It is to be understood that otherembodiments may be utilized, and structural and functional modificationsmay be made without departing from the scope of the present invention.

[0026] Messaging between wireless communication devices and betweenwireless and wired communication devices may encompass many differentnetwork types, communication protocols, and communication devices. FIG.1 illustrates a general messaging architecture that may be used toaccommodate various types of messaging services, including, for example,short messaging service (SMS), enhanced messaging service (EMS), andmultimedia messaging service (MMS).

[0027] The basic functionality of a messaging service is provided by amessaging service system. The messaging service system supports themessage storage, notification, and forward operations of the messagingservice. In the example of FIG. 1, a messaging service system 120comprises a messaging server/relay 121 and an associated messagingstorage device 123. The messaging service system may be connectedthrough a mobile network 135 to one or more mobile terminals 150.

[0028] The mobile network 135 may incorporate advanced wirelesscommunication protocols, such as those standardized by the 3^(rd)Generation Partnership Project (3GPP), providing significant gains innetwork capacity over previous technologies. These protocols enableadvanced video and multimedia services when used with multimediadevices. Multimedia devices such as personal data assistants (PDA's)152, multimedia mobile telephones 151, handheld or laptop computers 153,as well as other wireless devices 154 may be connected to the messagingservice system 120 and may provide messaging content in several formats,such as picture, text, audio or video. The messaging service system 120is responsible for storage and handling of ingoing and outgoing messagesand for the transfer of messages to different messaging systems, ifrequired. The messaging service system 120 may be coupled, for example,to other similar messaging service systems 110, or to email servers 140or yet other servers (YOS) 130 accessible through the internet 125. Thislevel of connectivity allows a variety of messaging formats to betransmitted between mobile wireless devices and internet connecteddevices.

[0029] A message transaction is initiated when an originator terminalsends a message to a target terminal. This event is the first in aseries of data and handshaking communications that may occur betweenvarious devices involved in transferring the message from the originatorto the target. The message from the originator terminal may be stored ona message server and, at some later time, be retrieved by or deliveredto the target terminal. In one example, messages may be routed betweenthe wireless terminals and the message server through a wirelessnetwork, wherein each device uses a compatible communication protocol.Alternatively, messages may be routed between the wireless terminals andthe message server with the employment of a proxy device capable ofoffering mobile service enhancements. For example, a proxy device, suchas a WAP wireless proxy, may be used to address communication privacyconcerns, or to offer push functionality allowing the messaging servicesystem to asynchronously send information to a mobile device.Furthermore, a translation device may be required to providecompatibility between the communication protocols of the wirelessdevices and the messaging service system, for example. Morespecifically, the system may utilize a WAP gateway to handle theprotocol interworking between the mobile terminals and the messageserver.

[0030]FIG. 2 provides an example of a transmission path between awireless messaging terminal 210 and a messaging relay/server 250 of amessaging service system. In this example, a wireless terminal 210 iscoupled to the messaging server/relay 250 through a wireless applicationprotocol (WAP) gateway 230. The WAP gateway provides a standardizedprotocol for linking wireless devices to the internet. The gateway 230supports interface protocols used for wireless communications and iscompatible for use with multimedia messaging services. For example, amultimedia message may transit from the wireless terminal 210 though amobile network 220 to the WAP gateway 230 using WAP session protocol(WSP) 260 and/or WAP PUSH services. From the WAP gateway 230, themultimedia message may be transmitted to the messaging relay/server 250over the internet 240 using HTTP format 270.

[0031]FIG. 3A illustrates various messaging service system componentsproviding messaging service for two mobile terminals 310, 320. In thisexample, the wireless terminals 310, 320 are coupled together and to amessaging service system 340 through a wireless network 330. Themessaging service system 340 may include one or more messaging servers342, 344 and one or more message storage devices 346. More generally,the devices may be coupled via a number of communication pathways,including, for example, those illustrated in FIG. 1.

[0032] In the example illustrated in FIG. 3B, the devices involved in amessage transaction include the originator terminal 310, the targetterminal 320, and the messaging service system 340. In this example, theterminals 310, 320 are connected through a wireless network 330 to aproxy device 350 utilizing a wireless communication protocol such asWAP. The WAP wireless proxy 350 may be coupled through the internet 360to the messaging service system 340. The messaging service system mayinclude one or more messaging servers 342, 344 and one or more messagestorage devices 346.

[0033] A message is transferred from the originator terminal 310 throughthe wireless network 330 to the messaging service system 340. Themessage may be temporarily stored in the messaging service system 340until the target terminal 320 is located. When the target terminal 320is located by the messaging service system 340, the messaging servicesystem 340 sends notification to the target terminal 320 that a messagehas been received.

[0034] In response to receiving the notification, the target terminal320 may invoke an immediate or delayed message retrieval request.Initiation of a message retrieval may be accomplished by the targetterminal 320 prompting the target user (not shown) to issue a retrievalrequest, or the target terminal 320 may invoke the retrieval requestautomatically. A message retrieval request is sent from the targetterminal 320 to the messaging service center 340. Upon receipt of themessage retrieval request, the messaging service system 340 delivers themessage to the target terminal 320.

[0035]FIG. 4 illustrates in more detail the basic structure of a messagetransaction flow between a messaging service system 420 and a targetterminal 410. The message transaction flow includes a series of data andhandshaking messages between the messaging service system 420 and thetarget terminal 410.

[0036] The message transaction flow begins when a message 440 is sent byan originator terminal 430 directed to a target terminal 410 via themessaging service system 420. The message 440 may be posted to thetarget messaging service system 420, for example, using the WSP/HTTPPOST format. The message 440 may be stored in the messaging servicesystem 420 for a period of time. When the messaging service system 420locates the target terminal 410, the messaging service system 420 sendsa notification message 442 to the target terminal 410 notifying thetarget terminal 410 that a message has been received. The targetterminal 410 responds to the notification message 442 by transmitting anotification acknowledgement 444 to the messaging service system 420indicating that the target terminal 410 has received the notificationmessage 442. The target terminal 410 may immediately retrieve themessage sent from the originating terminal 430, or may delay retrievingthe message for a period of time.

[0037] The target terminal 410 invokes message retrieval by sending amessage retrieval request 446 to the messaging service system 420. Forexample, the target terminal 410 may send the message retrieval request446 using the WSP/HTTP GET format. The messaging service system 420responds to the message retrieval request 446 by delivering the message448 to the target terminal 410. The target terminal acknowledgesdelivery of the message 448 in a delivery acknowledgement 450 directedto the messaging service system 420. The messaging service system mayindicate to the originator terminal 430 that the message delivery iscomplete 460.

[0038] In many applications it is desirable or necessary for themessaging service to be distributed among several messaging servicesystems functioning in one operator network. Distribution of messagingtraffic among messaging service systems may be used to achieve arequired capacity or response time of messaging service, or to providemessaging system redundancy. Messaging service centers may be located indifferent geographical locations, providing redundant systems tomaintain messaging services in the event of a catastrophic occurrence,for example. Furthermore, it may be desirable for the messaging systemsof two vendors to function fluently within the same network space.

[0039] Distributing the messaging traffic to several messaging servicesystems may be accomplished using a load-balancing switch. Theload-balancing switch may be programmed with information about thecapabilities and services provided by each messaging service system. Theload-balancing switch may direct messaging traffic to an appropriatemessaging service system based on a variety of load-balancingconsiderations. For example, the load-balancing switch may distributemessaging based on mobile user and device requirements includingsubscriber ID, phone number, and device type. Load balancing may also bebased on the differences in capabilities of the various messagingsystems in the network, including the capacities or response times ofthe various messaging systems coupled to the switch.

[0040] In general, the wireless devices may be coupled to a loadbalancing switch through a wireless network, or using a translationdevice such as a WAP gateway, or using a WAP wireless proxy. An examplenetwork system using a load-balancing switch and an optional WAPwireless proxy is illustrated in FIG. 5. In this example, an originatorterminal 510 and a target terminal 520 are coupled through a wirelessnetwork 530 to a WAP wireless proxy 540. The WAP wireless proxy 540 iscoupled to a load balancing switch 550. Two messaging systems 560, 570operating within one operator network 580 are connected to the switch550 through an internet connection 555. Although this example shows twomessaging systems in the operator network 580, the number of messagingsystems may be more than two. Each messaging system 560, 570 may haveone or more messaging relay/servers 562, 564, 572, 574 and associatedmessage storage devices (not shown).

[0041] The use of a load balancing in operator networks that includeseveral messaging service systems may present particular problems. Inthese situations, load balancing interjects an additional networkelement into the message transaction flow. For some messaging systems,such as multimedia messaging, the protocols established by variousstandards groups, e.g., WAP and 3GPP, do not fully address thecommunication protocol requirements necessary to operate more than onemessaging service system in an operator network.

[0042]FIGS. 6A and 6B illustrate conflicts in the handshaking protocolof message delivery in connection with messaging services, such asmultimedia messaging services, provided using two messaging servicesystems in one operator network. Turning now to FIG. 6A, a messagetransaction representative of a message posting and retrieval process isillustrated utilizing a load-balancing switch 634 interposed betweenwireless devices 610, 620 and two messaging service systems 640, 650operating in a single operator network 660. The system may include anoptional wireless proxy 632, but this is not a required component. Theload-balancing switch 634 is used to direct messaging traffic to themessaging service systems 640, 650 in the operator network 660. In thisexample, both the originator terminal 610 and the target terminal 620are illustrated as mobile telephones. In other configurations, themessaging terminals 610, 620 may represent a number of differentmessaging device types and may be connected in various ways, forexample, those illustrated in FIG. 1.

[0043] The message transaction begins when the originator terminal 610sends a message 611 directed to a target terminal 620. The message 611may be sent, for example, through a WSP/HTTP POST command. The WSP/HTTPPOST message 611 identifies the location to which the message 611 isdirected using the virtual address of the operator network. In theexample of FIG. 6, the virtual address of the operator network isprovided by the uniform resource identifier (URI)http://mmsc.operator.net. The operator network identified by the URIhttp://mmsc.operator.net includes two messaging service systems,System-1 640 and System-2 650.

[0044] In the example illustrated in FIG. 6, the message 611 from theoriginator terminal 610 is transmitted via a wireless network to aload-balancing switch 634. From the switch 634, the message 611 isrouted to one of the messaging service systems 640, 650 in the operatornetwork 660 identified by http://mmsc.operator.net. The criteria forrouting messages may be based on the capacities or response times of thevarious messaging service systems 640, 650 in the operator network 660,or messages may be distributed based on any desired process. In thisexample, the load-balancing switch 634 routes the message 611 toSystem-1 640.

[0045] After the message 611 is delivered to messaging service system-1640, the messaging service system-1 640 responds to the message 611 bydirecting a notification message 612 to the target terminal 620. Thenotification message 612 indicates to the target terminal 620 that amessage 611 has been received. The notification message 612 istransmitted through the switch 634 to the target terminal 620. Thenotification message 612 from messaging service system-1 640 to thetarget terminal 620 provides a URI providing the location of messagingservice system-1 640 as well as a message identification for the message611. Specifically, messaging service system-1 640 provides in thenotification message the URI http://mmsc.operator.net/system1/messageid.Thus, the target terminal 620 is made aware of the location of themessaging service system storing the message, in this example, messagingservice system-1 640.

[0046] Upon receiving the notification message 612 from messagingservice system-1 640, the target terminal 620 responds by transmitting anotification acknowledgement message 613. The notificationacknowledgement 613 is transmitted by the target terminal 620 throughthe load-balancing switch 634.

[0047] Routing the notification acknowledgement 613 to messaging servicesystem-1 640, where the message is located, becomes problematic at theswitch 634. According to the current 3GPP and/or WAP forum standards (3GTS23.140, WAP-206 MMS Client Transactions, WAP-209 MMS Encapsulation)the specific URI of the messaging service system where the message islocated is not required to be included in a notification acknowledgement613. The absence of the specific URI makes it impossible toautomatically route the notification acknowledgement 613 to theappropriate messaging service system, in this case, messaging servicesystem-1 640. Under the present protocol, the switch 634 is unable toresolve whether to transmit the notification acknowledgement 613 tomessaging service system-1 640 along path 614, or to transmit thenotification acknowledgement 613 to messaging service system-2 650 alongpath 615.

[0048] A similar situation occurs in the handshaking protocol associatedwith message retrieval, as illustrated in FIG. 6B. The target terminal620 initiates message retrieval by sending a message retrieval request621 directed to messaging service system-1 640 where the message isstored. The target terminal 620 may send the message retrieval request621 using, for example, a WSP/HTTP GET request. When initiating messageretrieval, the target terminal 620 incorporates within the messageretrieval request 621 the specific URI provided in the notificationmessage 612 from the messaging service system 640 where the message isstored, as previously discussed in connection with FIG. 6A. In theexample of FIG. 6B, the message retrieval request 621 from the targetterminal 620 incorporates the URI http://mmsc.operator.net/system1/,indicating that the message is to be retrieved from messaging servicesystem-1 640.

[0049] The message retrieval request 621 is transmitted from the targetterminal 620 to messaging service system-1 640. In response to receivingthe message retrieval request 621, messaging service system-1 640transmits the message 622 to the target terminal 620. When the targetterminal 620 receives the message 622 from messaging service system-1640, the target terminal 620 responds by transmitting a deliveryacknowledgement 623. The delivery acknowledgement 623 indicates that themessage 622 has been delivered. However, according to the current 3GPPand/or WAP forum standards (3G TS23.140, WAP-206 MMS ClientTransactions, WAP-209 MMS Encapsulation), the specific URI of themessaging service system from which the message was delivered is notrequired to be included in a delivery acknowledgement. The absence ofthe specific URI makes it impossible to automatically route the deliveryacknowledgement to the appropriate messaging service system.

[0050] In the situation illustrated in FIG. 6B, under the presentstandard protocol, the switch 634 is unable to resolve whether totransmit the delivery acknowledgement message 623 to messaging servicesystem-1 640 over path 624, or to transmit the delivery acknowledgement623 to messaging service system-2 650 over path 625.

[0051] The use of several messaging service systems in an operatornetwork is not supported under the current WAP and 3GPP standards. Theidentification of specific messaging service system locations using, forexample, the URI's of messaging service systems, is not required to beincluded in some handshaking messages such as the notificationacknowledgement and delivery acknowledgement messages discussed above.This situation may lead to conflicts at the load-balancing switch indetermining the messaging service system to which the handshakingmessages should be sent. The present invention is directed to a methodand system for resolving these and other problems associated withenabling the operation of more than one messaging service system in anoperator network.

[0052] A method of the invention is conceptually illustrated, in broadand general terms, in the flowchart of FIG. 7. A message transaction isinitiated when an originator terminal sends a message to a targetterminal 710. The message is stored on a particular messaging system 720in an operator network having several messaging systems. The messagingsystems may be coupled through a load balancing switch that distributesthe messages among the messaging systems. A message transaction includesa number of data and handshaking messages that flow between theoriginator terminal, the messaging service system, and the targetterminal. Handshaking messages indicating a status of the messagetransaction are directed from the target terminal to the particularmessaging system where the message is stored 730, enabling the operationof several messaging systems in an operator network.

[0053] According to one method of the invention, incorporation the URIof the particular messaging service system where the message is storedis required for acknowledgement messages sent from the target terminalto the particular messaging service system. By this method, theacknowledgement messages may be correctly routed to the particularmessaging service system where the message is stored.

[0054] This method is illustrated in the diagram of FIG. 8A. A message811, directed from an originating terminal 810 to a target terminal 820,is temporarily stored in a particular messaging service system. In theexample of FIG. 8A, the message 811 is stored in messaging servicesystem-1 840. Messaging service system-1 840 is located within anoperator network 860 including two messaging service systems 840, 850.Although only two messaging service systems 840, 850 are shown in theoperator network 860, more than two networks may be included.

[0055] After the messaging service system-1 840 receives the message811, messaging service system-1 840 sends a notification message 812directed to the target terminal 820. The target terminal 820 responds bysending a notification acknowledgement 813 to messaging service system-1840. In this embodiment, the notification acknowledgement 813 is postedto the specific URI of the messaging service system storing the message.In the example of FIG. 8A, the notification acknowledgement 813incorporates the URI of messaging service system-1 840,http://mnsc.operator.net/system1/. Because the notificationacknowledgement 813 incorporates the specific URI of messaging servicesystem-1 840, the switch 834 is able to direct to the notificationacknowledgement 813 to the correct messaging service system.

[0056] Message retrieval for this embodiment operates in a similarmanner, as illustrated in FIG. 8B. The target terminal 820 invokesmessage retrieval by posting a message retrieval request 821 tomessaging service system-1 840. In response to the message retrievalrequest 821, messaging service system-1 840 transmits the message 822 tothe target terminal 820.

[0057] The target terminal 820 sends a delivery acknowledgement 823 tomessaging service system-1 840. The delivery acknowledgement 823contains the URI of messaging service system-1 840. In the example ofFIG. 8B, the delivery acknowledgement 823 incorporates the URIhttp://mmsc.operator.net/system1/, which is the URI location formessaging service system-1 840. With the incorporation of the URI in thedelivery acknowledgement 823, the switch is able to send the deliveryacknowledgement 823 to the correct messaging service system.

[0058] One aspect of this embodiment requires the incorporation into themessaging standards, for example 3GPP and/or WAP forum specifications(3G TS23.140, WAP-206 MMS Client Transactions, WAP-209 MMSEncapsulation), a requirement that part of the URI used in a messagenotification shall be used when delivering responses from a targetterminal to a messaging service system. This requirement ensures thatacknowledgement messages, such as notification acknowledgement anddelivery acknowledgement, will incorporate the URI of the specificmessaging service system to which the messages are directed so that theacknowledgement messages can be correctly routed.

[0059] Another aspect of this embodiment requires a new informationelement in the notification message to be required by the standardsreferenced above. According to this aspect of the invention, a newinformation element, denoted, for example, “Responses-To” incorporatedin the notification message from a messaging service system provides areturn location for all acknowledgement messages to the messagingservice system. The target terminal is required to use the returnlocation for acknowledgement messages posted to the messaging servicesystem, including, for example, the notification acknowledgement and thedelivery acknowledgement.

[0060] The embodiments of the present invention discussed abovecontemplate a change in various existing standards to require theincorporation of the messaging service system URI in acknowledgementmessages. Other embodiments of the invention discussed below enable theuse of several messaging service systems in one operator network withoutrequiring modification of the standards. Regardless of whether thecurrent standards are modified, the embodiments discussed below areadvantageous for use with legacy devices that do not incorporate thestandard change.

[0061] A method of the present invention, illustrated in FIGS. 9A and9B, uses the load balancing switch to examine a transactionidentification that is incorporated into the acknowledgment messages todetermine the appropriate routing for acknowledgment messagestransmitted by the target terminal. Turning to FIG. 9A, a messagetransaction is initiated when an originator client 910 posts a message911 directed to the target terminal 920. The message 911 is routed bythe load balancing switch 934 for storage in messaging service system-1940. Messaging service system-1 940 sends a notification message 912 tothe target terminal 920. Under present communication protocols, thenotification message 912 includes a transaction identification, ortransaction ID, which is used to associate a data packet with aparticular message transaction.

[0062] The target terminal 920 sends a notification acknowledgement 913containing the transaction ID to messaging service system-1 940 throughthe switch 934. The switch 934 examines the transaction ID and, from theinformation contained in the transaction ID, deduces the messagingservice system to which the notification acknowledgement should berouted, in this example, messaging service system-1 940.

[0063] Message retrieval in accordance with this embodiment isillustrated in FIG. 9B. Message retrieval is initiated when the targetterminal 920 sends a message retrieval request directed to messagingservice system-1 940. Messaging service system-1 940 responds bytransmitting the message 922 to the target terminal 920. The targetterminal 920 acknowledges message receipt by transmitting a deliveryacknowledgement 923 incorporating the transaction ID to messagingservice system-1 940. The switch 934 analyzes the transaction ID in thedelivery acknowledgment 923 from the target terminal 920 and routes thedelivery acknowledgement 923 to the proper messaging service system, inthis example, messaging service system-1 940.

[0064] Other embodiments of the invention use the messaging servicesystems to route the acknowledgement messages to the proper messagingservice system. In one embodiment, conceptually illustrated in thediagrams of FIGS. 10A and 10B, the transaction is initiated when theoriginator terminal 1010 sends a message 1011 directed to the targetterminal 1020. The message 1011 is routed by the switch 1034 for storagein messaging service system-1 1040. Messaging service system-1 1040sends a notification message 1012 containing a transaction ID to thetarget terminal 1020.

[0065] The target terminal 1020 responds to the notification message1012 by sending a notification acknowledgment 1013 also incorporatingthe transaction ID to messaging service system-1 1040. The switch 1034routes the notification acknowledgement 1013 to a random messagingservice system in the operator network, in this example, messagingservice system-2 1050. Messaging service system-2 1050 receives thenotification acknowledgement 1013 and analyzes the transaction ID todetermine the proper messaging service system to which the notificationacknowledgement 1013 is directed, in this example, messaging servicesystem-1 1040. Messaging service system-2 1050 then transmits thenotification acknowledgement 1014 to the messaging service system-11040.

[0066] Message retrieval is illustrated in the diagram of FIG. 10B.Message retrieval is initiated when the target terminal 1020 transmits amessage retrieval request 1021 to messaging service system-1 1040requesting message retrieval. Upon receiving the message retrievalrequest 1021, messaging service system-1 1040 transmits the message 1022to the target terminal 1020.

[0067] Upon receiving the message 1022, the target terminal 1020transmits a delivery acknowledgement 1023 incorporating the transactionID. The switch 1034 routes the delivery acknowledgement 1024 to a randommessaging service system in the operator network, in this example,messaging service system-2 1050. Messaging service system-2 1050analyzes the transaction ID incorporated in the delivery acknowledgement1023 and redirects the delivery acknowledgement 1025 to the propermessaging service system, messaging service system-1 1040.

[0068] Instead of invoking a message retrieval request, the targetterminal may request that a message be forwarded without retrieval. Amethod of the present invention for handling a message transactionincluding a forwarding request is illustrated the diagrams of FIGS. 11Aand 11B.

[0069] In accordance with this embodiment, a message transaction isinitiated when an originator terminal 1110 directs a message 1111 to atarget terminal 1120. The message 1111 is routed by the switch 1134 forstorage in messaging service system-1 1140. Messaging service system-11140 transmits a notification message 1112 incorporating a transactionID to the target terminal 1120.

[0070] The target terminal 1120 responds to the message notification1112 by transmitting a forwarding without retrieval request 1113. Theswitch 1134 routes the forward without retrieval request 1113 to arandom messaging service system, in this example, messaging servicesystem-2 1150. Messaging service system-2 1150 creates a proxyconnection to the messaging service system to which the forwardingrequest was directed, in this example, messaging service system-1 1140.Messaging service system-2 1150 routes the forwarding request 1114 tomessaging service system-I 1140. Messaging service system-I 1140synchronously responds to the forwarding message request 1114 with aforwarding acknowledgement 1115. The forwarding acknowledgement 1115 isrouted through the randomly chosen messaging service system-2 1150, tothe switch 1134, and ultimately to the target terminal 1120.

[0071] The embodiments of the present invention discussed in connectionwith FIGS. 9A, 9B, 10A, 10B, 11A, and 11B depend upon analysis of atransaction ID incorporated in an acknowledgement message to determinethe correct routing for the acknowledgement message. In the exampleembodiment illustrated in FIGS. 9A and 9B, the load balancing switch isthe network element responsible for analyzing the transaction ID todetermine correct routing of the acknowledgement. In the exampleembodiments of FIGS. 10A, 10B, 11A and 11B, the messaging servicesystems are the network elements that perform the analysis of thetransaction ID. In some situations, the load balancing switch and/or themessaging service systems may not be capable of resolving the correctrouting for an acknowledgment by analyzing the transaction ID.

[0072] The following embodiments of the invention employ techniques ofdirecting an acknowledgement to a number of messaging service systemsuntil the acknowledgement reaches the correct messaging service system.In the embodiment discussed in connection with FIGS. 12A and 12B, theacknowledgement is broadcast by a first messaging service systemreceiving the acknowledgement to all other messaging service systems inthe operator network. In the embodiment illustrated in connection withFIGS. 13A and 13B, the first messaging service system receiving theacknowledgement routes the acknowledgement to a second messaging servicesystem. The second messaging service system routes the acknowledgementto a third messaging service system, and so forth, until theacknowledgement reaches the correct messaging service system.

[0073] In the embodiment illustrated in the diagrams of FIG. 12A andFIG. 12B, acknowledgement messages are broadcast by a first messagingservice system receiving the message to all messaging service systems inthe operator network. The originator terminal 1210 initiates a messagetransaction by directing a message 1211 to the target terminal 1220. Themessage 1211 is routed by the load balancing switch 1234 for storage ata messaging service system-1 1240. Messaging service system-1 1240transmits a notification message 1212 to the target terminal 1220.

[0074] The target terminal 1220 transmits a notification acknowledgement1213. The switch 1234 routes the notification acknowledgement 1213 to arandom messaging service system. In the example of FIG. 12A, messagingservice system-2 1250 is selected as the random messaging servicesystem. Messaging service system-2 1250 broadcasts the notificationacknowledgement to every other messaging service system 1240, 1270 inthe operator network 1260. Specifically, messaging service system-2 1250routes the notification acknowledgement 1216 to messaging servicesystem-1 1240 and also routes the notification acknowledgement 1217 tomessaging service system-3 1270. Each messaging service system 1240,1250, 1270 analyzes the notification acknowledgement to determine if thenotification acknowledgement was directed to that particular messagingservice system.

[0075] As illustrated in FIG. 12B, message retrieval is initiated when atarget terminal 1220 transmits a message retrieval request 1221 tomessaging service system-1 1240 requesting retrieval of the storedmessage. Messaging service system-1 1240 responds by transmitting themessage 1222 to the target terminal 1220. Upon receipt of the message1222, the target terminal 1220 transmits a delivery acknowledgement1223.

[0076] When the delivery acknowledgement message 1223 arrives at theswitch 1234, the switch 1234 is unable to resolve the correct messagingservice system to which the acknowledgement is directed. The switch 1234transmits the acknowledgement 1223 to a randomly selected messagingservice system. In the example of FIG. 12B, messaging service system-21250 is selected.

[0077] Messaging service system-2 1250 routes the acknowledgement toevery other messaging service system 1240, 1270 in the operator network1260. Specifically, messaging service system-2 1250 routes theacknowledgement 1224 to messaging service system-1240 and also routesthe acknowledgement 1225 to messaging service system-3 1270. Eachmessaging service system 1240, 1250, 1270 determines if the deliveryacknowledgement was directed to that particular messaging servicesystem.

[0078] A further embodiment of the invention is illustrated in thediagrams of FIGS. 13A and 13B. A message transaction is initiated by anoriginator terminal 1310 directing a message 1311 to a target terminal1320. The message 1311 is routed by the switch 1334 to messaging servicesystem-1 1340 for storage. Messaging service system-1340 transmits amessage notification 1312 to the target terminal 1320.

[0079] The target terminal 1320 responds to the notification message1312 by transmitting a notification acknowledgement 1313. When thenotification acknowledgement 1313 reaches the switch, 1334, the switch1334 is unable to resolve the correct messaging service system to whichthe notification acknowledgement is directed. The switch 1334 transmitsthe notification acknowledgement 1313 to a messaging service system inthe operator network. In the example of FIG. 13, the notificationacknowledgement 1313 is first routed to messaging service system-3 1370.

[0080] Messaging service system-3 1370 analyzes the notificationacknowledgement to determine if the notification acknowledgement wasintended for messaging service system-3 1370. If the notificationacknowledgement 1313 was not directed to messaging service system-31370, messaging service system-3 1370 routes the notificationacknowledgement 1319 to messaging service system-2 1350. Messagingservice system-2 1350 analyzes the notification acknowledgement todetermine if the notification acknowledgement was intended for messagingservice system-2 1350. If not, messaging service system-2 1350 routesthe notification acknowledgement 1318 to messaging service system-1340.

[0081] In a similar manner, the delivery acknowledgement is routedsuccessively to each messaging service system in the operator networkuntil the delivery acknowledgement reaches the correct messaging servicesystem. As illustrated in FIG. 13B, a target terminal 1320 may requestmessage delivery by transmitting a message delivery request 1321 to themessaging service system where a message is stored, in this examplemessaging service system-1 1340. Messaging service system-1 1340responds by transmitting the message 1322 to the target terminal 1320.

[0082] The target terminal 1320 acknowledges receipt of the message 1322by transmitting a delivery acknowledgement 1323. When the deliveryacknowledgement 1323 reaches the switch, 1334, the switch 1334 is unableto resolve the messaging service system to which the deliveryacknowledgement 1323 is directed. The switch 1334 routes the deliveryacknowledgement 1323 to a messaging service system in the operatornetwork 1360. In the example of FIG. 13B, the switch 1334 routes thedelivery acknowledgement 1323 to messaging service system-3 1370.

[0083] Messaging service system-3 1370 determines that the deliveryacknowledgement was not directed to messaging service system-3 1370 androutes the delivery acknowledgement 1329 to the next messaging servicesystem, messaging service system-2 1350. Messaging service system-2 1350determines that the delivery acknowledgement 1329 was not directed tomessaging service system-2 1350. Messaging service system-2 1350 routesthe delivery acknowledgement 1328 to messaging service system-1 1340. Inthis manner, the delivery acknowledgement is directed to each messagingservice system until the delivery acknowledgement reaches the correctmessaging service system.

[0084] While the invention is amenable to various modifications andalternative forms, specifics thereof have been shown by way of examplein the drawings and will be described in detail hereinbelow. It is to beunderstood, however, that the intention is not to limit the invention tothe particular embodiments described. On the contrary, the invention isintended to cover all modifications, equivalents, and alternativesfalling within the scope of the invention as defined by the appendedclaims.

What is claimed is:
 1. A method for sending messaging information between an originator terminal and a target terminal in an operator network having several messaging systems, comprising: initiating a message transaction by sending a message from the originator terminal to the target terminal; storing the message on a particular messaging service system in the operator network having several messaging service systems; and directing one or more handshaking messages from the target terminal to the particular messaging service system, each handshaking message indicating a status of the message transaction.
 2. The method of claim 1, wherein sending messaging information between an originator terminal and a target terminal comprises sending multimedia messaging information.
 3. The method of claim 1, wherein storing the message on the particular messaging system comprises selecting the particular messaging service system according to one or more load balancing parameters.
 4. The method of claim 3, wherein selecting the particular messaging service system according to one or more load balancing parameters comprises distributing the message to the particular messaging service system based on response times of the several messaging service systems in the operator network.
 5. The method of claim 3, wherein selecting the particular messaging service system according to one or more load balancing parameters comprises distributing the message to the particular messaging service system based on storage capacities of the several messaging service systems in the operator network.
 6. The method of claim 1, wherein directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises sending a notification acknowledgement from the target terminal to the particular messaging service system confirming that a message notification was received by the target terminal.
 7. The method of claim 6, wherein sending the notification acknowledgement from the target terminal to the particular messaging system comprises sending the notification acknowledgement using the uniform resource identifier of the particular messaging service system to which the notification acknowledgement is directed.
 8. The method of claim 7, wherein sending the notification acknowledgement using the uniform resource identifier of the particular messaging service system to which the notification acknowledgement is directed comprises: including a message location identifier in a notification message from the particular messaging service system to the target terminal, the notification message indicating that the message transaction is stored in the particular messaging service system and the message location identifier specifying the uniform resource identifier of the particular messaging service system; and directing the notification acknowledgement from the target terminal to the particular messaging service system using the uniform resource identifier of the particular messaging service system.
 9. The method of claim 7, wherein sending the notification acknowledgement using the uniform resource identifier of the particular messaging service system to which the notification acknowledgement is directed comprises: including an information element in a notification message from the particular messaging service system to the target terminal, the notification message indicating that the message transaction is stored in the particular messaging service system and the message location identifier specifying the uniform resource identifier of the particular messaging service system; and directing the notification acknowledgement from the target terminal to the particular messaging service system using the uniform resource identifier of the particular messaging service system specified in the information element.
 10. The method of claim 1, wherein directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises sending a delivery acknowledgement from the target terminal to the particular messaging service system confirming that a message has been received by the target terminal.
 11. The method of claim 10, wherein sending the delivery acknowledgement from the target terminal to the particular messaging service system includes sending the delivery acknowledgement using the uniform resource identifier of the particular messaging service system to which the delivery acknowledgement is directed.
 12. The method of claim 11, wherein sending the delivery acknowledgement using the uniform resource identifier of the particular messaging service system to which the delivery acknowledgement is directed comprises: including a message location identifier in a notification message from the particular messaging service system to the target terminal, the notification message indicating that the message transaction is stored in the particular messaging service system and the message location identifier specifying the uniform resource identifier of the particular messaging service system; and directing the delivery acknowledgement from the target terminal to the particular messaging service system using the uniform resource identifier of the particular messaging service system.
 13. The method of claim 11, wherein sending the delivery acknowledgement using the uniform resource identifier of the particular messaging service system to which the delivery acknowledgement is directed comprises: including an information element in a notification message from the particular messaging service system to the target terminal, the notification message indicating that the message transaction is stored in the particular messaging service system and the message location identifier specifying the uniform resource identifier of the particular messaging service system; and directing the delivery acknowledgement from the target terminal to the particular messaging service system using the uniform resource identifier of the particular messaging service system specified in the information element.
 14. The method of claim 1, wherein sending the one or more handshaking messages from the target client to the particular messaging service system further comprises using a transaction identification to route the one or more handshaking messages to the particular messaging service system to which the one or more handshaking messages are directed.
 15. The method of claim 14, wherein using the transaction identification to route the one or more handshaking messages comprises using a load balancing switch to analyze the transaction identification for determining the location of the particular messaging service system to which the one or more handshaking messages are directed.
 16. The method of claim 1, wherein using the transaction identification to route the one or more handshaking messages comprises using one or more of the several messaging service systems to analyze the transaction identification to determine the location of the particular messaging service system to which the one or more handshaking messages are directed.
 17. The method of claim 16, wherein using one or more of the several messaging service systems to analyze the transaction identification comprises: routing the one or more handshaking messages from the target terminal to a randomly selected messaging service system in the operator network; using the randomly selected messaging service system to determine the location of the particular messaging service system; and sending the one or more handshaking messages from the randomly selected messaging service system to the particular messaging system to which the one or more acknowledgement messages are directed.
 18. The method of claim 16, wherein sending the one or more handshaking messages comprises sending a notification acknowledgement message.
 19. The method of claim 16, wherein sending the one or more handshaking messages comprises sending a delivery acknowledgement message.
 20. The method of claim 17, wherein routing the one or more handshaking messages comprises routing a forwarding request from the target terminal to the particular messaging service system and in response to receiving the forwarding request the particular messaging service system routes a reply to the target terminal through the randomly selected messaging service system.
 21. The method of claim 1, wherein directing the one or more handshaking messages from the target terminal to the particular messaging service system further comprises: sending the one or more handshaking messages from the target terminal to a randomly selected messaging service system in the operator network; and routing the one or more handshaking messages from the randomly selected messaging service system to each messaging service system in the operator network.
 22. The method of claim 21, wherein sending the one or more handshaking messages from the target terminal to the randomly selected messaging service system includes sending a notification acknowledgement.
 23. The method of claim 21, wherein sending the one or more handshaking messages from the target terminal to the randomly selected messaging service system includes sending a delivery acknowledgement.
 24. The method of claim 1, wherein sending the one or more handshaking messages from the target terminal to the particular messaging service system further comprises sequentially routing the one or more handshaking messages to each messaging service system until the one or more handshaking messages are routed to the particular messaging service system.
 25. A messaging system, comprising: a first mobile terminal and a second mobile terminal, the first mobile terminal initiating a message transaction by sending a message to the second mobile terminal; and a particular messaging service system coupled to the first and the second mobile terminals and occupying an operator network including several messaging service systems, the messaging service system configured to store the message sent by the first mobile terminal and receive handshaking messages regarding the status of the message transaction directed from the second mobile terminal to the particular messaging service system.
 26. The system of claim 25, wherein the message sent by the first mobile terminal to the second mobile terminal is a multimedia message.
 27. The system of claim 25, further comprising a load-balancing switch coupled to the several messaging service systems for directing messages and handshaking messages between the several messaging service systems in the operator network and the mobile terminals.
 28. The system of claim 25, wherein the second mobile terminal sends a notification acknowledgement to the particular messaging service system confirming that a message notification has been received by the second mobile terminal.
 29. The system of claim 25, wherein the second mobile terminal uses the uniform resource identifier of the particular messaging service system to direct a notification acknowledgement to the particular messaging service system.
 30. The system of claim 25, wherein the particular messaging service system incorporates a message location identifier specifying the uniform resource identifier of the particular messaging service system into a notification message sent from the particular messaging service system to the second mobile terminal and the second mobile terminal directs a notification acknowledgement to the particular messaging service system using the uniform resource identifier of the particular messaging service system.
 31. The system of claim 25, wherein the particular messaging service system incorporates an information element specifying the uniform resource identifier of the particular messaging service system into a notification message to the second mobile terminal and the second mobile terminal directs a notification acknowledgement to the particular messaging service system using the uniform resource identifier of the particular messaging service system specified in the information element.
 32. The system of claim 25, wherein the second mobile terminal directs a delivery acknowledgement to the particular messaging service system to confirm that a message has been received by the second mobile terminal.
 33. The system of claim 25, wherein the second mobile terminal directs a delivery acknowledgement to the particular messaging service system using the uniform resource identifier of the particular messaging service system.
 34. The system of claim 25, wherein the particular messaging service system incorporates a message location identifier specifying the uniform resource identifier of particular messaging service system into a notification message sent to the second mobile terminal and the second mobile terminal directs a delivery acknowledgement to the particular messaging service system using the uniform resource identifier of the particular messaging service system.
 35. The system of claim 25, wherein the particular messaging service system incorporates an information element specifying the uniform resource identifier of the particular messaging service system into a notification message to the second mobile terminal and the second mobile terminal directs a delivery acknowledgement to the particular messaging service system using the uniform resource identifier of the particular messaging service system specified in the information element.
 36. The system of claim 25, wherein one or more of the several messaging service systems determine the location of the particular messaging service system to which the handshaking messages are directed by analyzing a transaction identification.
 37. The system of claim 27, wherein the load-balancing switch uses a transaction identification to route handshaking messages to the particular messaging service system to which the handshaking messages are directed.
 38. The system of claim 27, wherein the load-balancing switch routes the one or more handshaking messages from the second mobile terminal to a randomly selected messaging service system, the randomly selected messaging service system analyzes the transaction identification to identify the particular messaging service system and routes the handshaking messages to the particular messaging service system to which the handshaking messages are directed.
 39. The system of claim 27, wherein the load-balancing switch sends the handshaking messages from the second mobile terminal to a randomly selected messaging service system in the operator network and the randomly selected messaging service system routes the handshaking messages to each messaging service system in the operator network.
 40. The system of claim 27, wherein each messaging service system in the operator network routes the handshaking messages to another messaging service system until the handshaking messages are routed to the particular messaging service system.
 41. A messaging system, comprising: means for initiating a message transaction by sending a message from an originator terminal to a target terminal; means for storing the message on a particular messaging service system in an operator network having several messaging service systems; and means for directing one or more handshaking messages from the target terminal to the particular messaging service system, each handshaking message indicating a status of the message transaction.
 42. The system of claim 41, wherein means for initiating a message transaction by sending a message from an originator terminal to a target terminal comprises means for sending multimedia messaging information.
 43. The system of claim 41, wherein means for means for directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises means for directing the one or more handshaking messages to the particular messaging service system using the uniform resource identifier of the particular messaging service system.
 44. The system of claim 41, wherein means for directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises means for using a transaction identification for directing the one or more handshaking messages to the particular messaging service system.
 45. The system of claim 41, wherein means for directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises means for using a load-balancing switch to determine the location of the particular messaging service system by analyzing a transaction identification.
 46. The system of claim 41, wherein means for directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises means for using one or more of the several messaging service systems to determine a location of the particular messaging service system by analyzing a transaction identification.
 47. The system of claim 41, wherein means for directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises means for sending the one or more handshaking messages to each messaging service system in the operator network.
 48. The system of claim 41, wherein means for directing the one or more handshaking messages from the target terminal to the particular messaging service system comprises means for sequentially routing the one or more handshaking messages to each messaging service system until the one or more handshaking messages are routed to the particular messaging service system.
 49. A computer-readable medium having computer-executable instructions for sending messaging information between an originator terminal and a target terminal in an operator network having several messaging systems, the computer-executable instructions performing a method comprising: initiating a message transaction by sending a message from the originator terminal to the target terminal; storing the message on a particular messaging service system in the operator network having several messaging service systems; and directing one or more handshaking messages from the target terminal to the particular messaging service system, each handshaking message indicating a status of the message transaction. 